<template>
  <div>
    减少:
    <button v-on:click="sub">{{count}}</button>
    <button @click="subN(3)">{{count}}</button>
    <button @click="subAync">{{count}}</button>
    <button @click="subNAync(5)">{{count}}</button>
    <button>{{show}}</button>
  </div>
</template>

<script>
// 方式二： mapState 辅助函数获取（推荐）
// mapGetters 辅助函数获取（推荐）
import { mapState, mapGetters, mapMutations, mapActions } from 'vuex'

export default {
  name: 'my-subition',
  computed: {
    ...mapState(['count']),
    ...mapGetters(['show'])
  },
  methods: {
    // 使用常量替代 Mutation 事件类型
    // 将这里的 sub 映射为 this.$store.commit('sub')
    // 将这里的 subN 映射为 this.$store.commit('subN')
    ...mapMutations(['sub', 'subN']),
    ...mapActions(['subAync', 'subNAync'])
  }
}
</script>

<style scoped>

</style>
